博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
标签云的实现代码
阅读量:5129 次
发布时间:2019-06-13

本文共 2151 字,大约阅读时间需要 7 分钟。

 http://huxuemail.web-104.com 

 http://www.cnblogs.com/wuniaoheart/ 

 

数据库中,存放文章的表中有“Tag”字段,用来存放标签。标签之间用“,”分隔。比如“PHP,VB,随笔”。 

下面的实现代码,将标签从数据库中搜出来,并格式化处理,使其以出现的次数为依据显示出不同大小的文字连接。 
其中的细节,不做解释了! 
观念陈、方法笨、效率低的标签云的实现代码如下:

 

1 
";22 $Tags = explode(",",$TagString);23 $n = 1;24 $i = 0;25 $Continue = TRUE;26 //echo $Tags[1]."
";27 //in case no-label's article28 while($Tags[$n] OR $Tags[++$n] OR $Tags[++$n] ){29 $EachTag = $Tags[$n++];30 //echo $EachTag."
";31 $Continue = TRUE;32 for($i=0;$Continue;$i++){33 if( $EachTagStr[$i][0] ) {34 if( $EachTagStr[$i][0] == $EachTag ){35 $EachTagStr[$i][1]++;36 $Continue = FALSE;37 }38 else {39 if( $EachTagStr[$i+1][0] ) $Continue = TRUE;40 else {41 $EachTagStr[$i+1][0] = $EachTag;42 $EachTagStr[$i+1][1] = 1;43 $Continue = FALSE;44 }45 }46 } else { //initialize the array $EachTagStr[][]47 $EachTagStr[$i][0] = $EachTag;48 $EachTagStr[$i][1] = 1;49 $Continue = FALSE;50 }51 }52 }53 return $EachTagStr;54 }55 56 function ShowTag($Row,$ablink){57 $i = 0;58 while($Row[$i][0]){59 $EachTag = $Row[$i][0];60 $EachCount = $Row[$i][1];61 $Size = SetSize($EachCount);62 echo " ".$EachTag."(".$EachCount.")"." ";63 $i++;64 }65 }66 67 function GetTag(){68 $QuerySet = mysql_query("select * from article");69 while($Row = mysql_fetch_array($QuerySet)){70 $Tag = $Row['tag'];71 $TagString = $TagString.",".$Tag;72 }73 return $TagString;74 }75 76 function SetSize($Size){77 $Size += 10;78 if($Size > 30)79 $Size = 30;80 return $Size;81 }82 83 //Go 84 echo "
";85 echo "

标签云

";86 $String = GetTag();87 $Row = CountTag($String);88 ShowTag($Row,$ablink);89 echo "
";90 91 ?>

 

OK,DONE!

 

转载于:https://www.cnblogs.com/wuniaoheart/archive/2012/10/10/2717643.html

你可能感兴趣的文章
virutalenv一次行安装多个requirements里的文件
查看>>
Vue安装准备工作
查看>>
.NET 母版页 讲解
查看>>
Android Bitmap 和 Canvas详解
查看>>
最大权闭合子图
查看>>
oracle 创建暂时表
查看>>
201421410014蒋佳奇
查看>>
导入导出数据库和导入导出数据库表
查看>>
linux下操作mysql
查看>>
【03月04日】A股滚动市盈率PE历史新低排名
查看>>
Xcode5和ObjC新特性
查看>>
jvm slot复用
查看>>
高并发系统数据库设计
查看>>
LibSVM for Python 使用
查看>>
入坑的开始~O(∩_∩)O~
查看>>
Centos 7.0 安装Mono 3.4 和 Jexus 5.6
查看>>
Windows 7 上安装Visual Studio 2015 失败解决方案
查看>>
iOS按钮长按
查看>>
Shell流程控制
查看>>
CSS属性值currentColor
查看>>